Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Karlsruhe Challenger Wimbledon - London Como Challenger Mallorca Challenger U.S. Open - New York Montevideo Challenger Oeiras 1 Challenger Manama Challenger Tenerife 2 Challenger Piracicaba Challenger Cordoba Open - Cordoba M25 Quinta Do Lago Kigali 1 Challenger Kigali 2 Challenger Murcia Challenger Girona Challenger BMW Open - Munich Oeiras 3 Challenger Millennium Estoril Open - Estoril Madrid Challenger Francavilla Challenger Rome Challenger Split Challenger Zagreb Challenger Turin Challenger Bratislava 1 Challenger Oeiras 4 Challenger Heilbronn Challenger Porto Challenger Brasov Challenger Milan Challenger Poznan Challenger M25 Esch/Alzette Tampere Challenger Seville Challenger Tulln Challenger Porto 2 Challenger M25 Sabadell Sibiu Challenger Braga Challenger M25 Zaragoza Valencia Challenger Campinas Challenger Curitiba Challenger Guayaquil Challenger Montevideo Challenger Tenerife 1 Challenger Oeiras 3 Challenger Maia Challenger Kigali 2 Challenger Montemar Challenger Koblenz Challenger Oeiras 1 Challenger Oeiras 2 Challenger Murcia Challenger Girona Challenger Estoril Challenger Astana Challenger Tunis Challenger M25 Angers Oeiras 5 Challenger M25 Reus Madrid Challenger Gonet Geneva Open - Geneva M25 Mataro Vicenza Challenger Milan Challenger M25 The Hague Pozoblanco Challenger Porto Challenger Spain F32 Portugal F4 Portugal F5 Portugal F6 Spain F7 Portugal F1 Portugal F2 Portugal F3 Spain F17 Spain F18 Sweden F5 USA F26 Mexico F10 Mexico F11 USA F1 USA F2 USA F3 Mexico F1 Costa Rica F1 Colombia F2 Canada F1 Canada F2 Canada F3 Usa F7 Usa F8 Czech Rep. F2 Czech Rep. F3 Spain F18 Usa F14 Usa F15 Usa F18 Usa F5 Portugal F3 Switzerland F3 Spain F11 Italy F5 Usa F13 Spain F15 Spain F16 Spain F17 Spain F18 Spain F20 Spain F21 Spain F22 Spain F23 Spain F24 Spain F26 Spain F27 Spain F29 Spain F30 Egypt F27 Egypt F28 Egypt F29 Egypt F30 Spain F1 Spain F2 Spain F3 Spain F4 Spain F5 Peru F1 Peru F2 Spain F6 Spain F7 Spain F8 Russia F3 Russia F4 Austria F1 Austria F2 Spain F17 Spain F18 Spain F19 Spain F20 Spain F23 Spain F25 Spain F26 Spain F28 Kazakhstan F12 Kazakhstan F13 Kazakhstan F14 Estonia F5 Spain F2 Spain F4 Spain F5 Turkey F10 India F3 India F4 Spain F9 Kazakhstan F3 Kazakhstan F4 Russia F1 Russia F4 Spain F20 Spain F21 Spain F22 Russia F5 Russia F6 Netherlands F5 Kazakhstan F5 Kazakhstan F6 Turkey F46 Usa F15 Spain F20 Spain F21 Lithuania F1 Georgia F1 Russia F5 Russia F6 Spain F29 Spain F30 Spain F31 Kazakhstan F7 Spain F35 Morocco F8 Morocco F9 Tunisia F3 (Hammamet) Tunisia F4 (Hammamet) Tunisia F5 (Hammamet) Spain F5 (Murcia) Brazil F22 Tunisia F8 (Hammamet) Tunisia F9 (Hammamet) Spain F7 (Javea) Brazil F31 Brazil F32 Brazil F33 Spain F8 (Reus) Spain F10 (Madrid) Brazil F1 Colombia F1 Colombia F2 USA F7 Kazakhstan F3 (Shymkent) Kazakhstan F4 (Shymkent) Kazakhstan F5 (Shymkent) Spain F12 (Lleida) Turkey F21 (Antalya) Brazil F26 Brazil F33 Turkey F22 (Istanbul) Spain F20 (Getxo) Spain F21 (Gandia) Spain F22 (Denia) Russia F6 (Moscow) Spain F20 Spain F21 Italy F35 (Santa Margherita Di Pula) Morocco F5 (Beni Mellal) Morocco F6 (Agadir) Turkey F45 (Antalya) Turkey F46 (Antalya) Spain F2 (Manacor (Mallorca)) Spain F3 (Paguera (Mallorca)) Spain F4 (Paguera (Mallorca)) Spain F1 Spain F5 (Murcia) Spain F2 Spain F6 (Xabia) Kazakhstan F3 (Shymkent) Kazakhstan F4 (Shymkent) Kazakhstan F5 (Shymkent) Spain F5 Italy F18 (Casinalbo) Spain F6 Germany F12 (Karlsruhe) Spain F24 (Santander) Spain F9 Italy F30 (Santa Margherita Di Pula) Tunisia F39 (Monastir) Tunisia F40 (Monastir) Tunisia F41 (Monastir) M15 Manacor M15 Manacor M25 Kazan M15 Madrid Spain F12 M25 Vic M25 Pardubice Spain F13 Spain F14 M25 Santander M25 Donostia-San-Sebastian M15 Monastir M15 Monastir M15 Kazan M25 Murcia M15 Novomoskovsk M15 Sintra M15 Sintra M25 Porto M15 Sharm El Sheikh M15 Sharm El Sheikh M25 Vale Do Lobo M15 Valldoreix M15 Villena M15 Benicarlo M15 Torello M15 Cairo M15 Cairo M15 Cairo M25 Villena M15 St. Petersburg M15 St. Petersburg M25 Vale do Lobo M25 Faro M15 Kazan M25 Vale do Lobo M15 Shymkent M15 Shymkent M15 Majadahonda M15 Valldoreix M15 Shymkent M15 Shymkent M25 Belgrade M25 Denia M25 Koksijde M25 Santander M25 Oviedo M15 Platja D'Aro M15 Platja D'Aro M15 Girona M15 Benicarlo M15 Monastir M15 Monastir M25 Nur-Sultan M25 Nur-Sultan M15 Antalya M15 Shymkent M15 Shymkent M25 Mataro Spain F3 M25 Zaragoza M25 Girona M25 Gaziantep M15 Benicarlo M25 Figueira da Foz M25 Porto M15 Antalya Naples Challenger - Naples 2007 Knoxville Challenger - Knoxville Bancolombia Open - Bogota Abierto Internacional de Salinas 'Dario Expreso' - Salinas Roma Open Challenger - Rome San Remo Tennis Cup - San Remo Challenger Banque Nationale - Granby Moncton Men's Challenger - Moncton Levene Gouldin & Thompson Tennis Challenger - Binghamton Semgroup Challenger - Tulsa Sacramento Challenger - Sacramento National Bank Men's Rimouski Challenger - Rimouski JSM Challenger of Champaign - Urbana Challenger Britania Zavaleta - Puebla Abierto Internacional Varonil Ciudad de Cancun - Cancun Sao Paulo Challenger Tunis Challenger Lexington Challenger Campos do Jordao Challenger Brasilia Challenger Salvador Challenger Belo Horizonte Challenger Montevideo Challenger Buenos Aires Challenger Asuncion Challenger Santiago Challenger Sao Paulo Challenger Sao Paulo Challenger Bucaramanga Challenger Dallas Challenger Recife Challenger Bordeaux Challenger Campos do Jordao Challenger Campinas Challenger Recife Challenger Belo Horizonte Challenger Sao Jose Do Rio Preto Challenger Sao Leopoldo Challenger Buenos Aires Challenger Guayaquil Challenger Montevideo Challenger Sao Paulo Challenger Bucaramanga Challenger Florianopolis Challenger Le Gosier Challenger Dallas Challenger Blumenau Challenger Santos Challenger Sao Paulo Challenger Bordeaux Challenger Caltanissetta Challenger Kosice Challenger Marburg Challenger Arad Challenger Timisoara Challenger Tampere Challenger St. Remy Challenger Campinas Challenger San Juan Challenger Rio De Janeiro Challenger Porto Alegre Challenger Montevideo Challenger Sao Leopoldo Challenger ATP Challenger Tour Finals Sao Paulo Challenger Bucaramanga Challenger Itajai Challenger Santos Challenger Sao Paulo Challenger Bordeaux Challenger Braunschweig Challenger Campinas Challenger Porto Alegre Challenger Sao Paulo Challenger Sao Jose Do Rio Preto Challenger Buenos Aires Challenger Montevideo Challenger Guayaquil Challenger Sao Paulo Challenger Bucaramanga Challenger Dallas Challenger Panama City Challenger Barranquilla Challenger Itajai Challenger Sao Paulo Challenger Santos Challenger Aix En Provence Challenger Furth Challenger Blois Challenger Marburg Challenger Braunschweig Challenger Tampere Challenger Campinas Challenger Porto Alegre Challenger Charlottesville Challenger Knoxville Challenger Champaign Challenger Bucaramanga Challenger Dallas Challenger Santo Domingo Challenger Irving Challenger Le Gosier Challenger Sarasota Challenger Savannah Challenger Karshi Challenger Bordeaux Challenger Samarkand Challenger Mestre Challenger Caltanissetta Challenger Moscow Challenger Blois Challenger Braunschweig Challenger Aptos Challenger Vancouver Challenger Como Challenger Seville Challenger Meknes Challenger Istanbul Challenger Campinas Challenger Porto Alegre Challenger Sao Paulo Challenger Corrientes Challenger Santiago Challenger Lima Challenger Guayaquil Challenger Buenos Aires Challenger Montevideo Challenger Bangkok Challenger Rio De Janeiro Challenger Bucaramanga Challenger Jonkoping Challenger Kazan Challenger Napoli Challenger Barletta Challenger Turin Challenger Bordeaux Challenger Mestre Challenger Vicenza Challenger Prostejov Challenger Milan Challenger Braunschweig Challenger Lima Challenger Guayaquil Challenger Barletta Challenger Francavilla Challenger Shymkent Challenger Lisbon Challenger Todi Challenger Braunschweig Challenger Scheveningen Challenger Biella Challenger Floridablanca Challenger Santo Domingo Challenger Cordenons Challenger Como Challenger Seville Challenger Rome Challenger Almaty Challenger Campinas Challenger Tashkent Challenger Buenos Aires Challenger Lima Challenger Guayaquil Challenger Montevideo Challenger Santiago Challenger Andria Challenger Rennes Challenger Santiago Challenger Le Gosier Challenger Marbella Challenger Alicante Challenger Barletta Challenger Tunis Challenger Ostrava Challenger Karshi Challenger Braga Challenger Samarkand Challenger Shymkent Challenger Almaty Challenger Fergana Challenger Astana Challenger Tampere Challenger Como Challenger Genova Challenger Szczecin Challenger Biella Challenger Campinas Challenger Santo Domingo Challenger Brest Challenger Guayaquil Challenger Montevideo Challenger Buenos Aires Challenger Orlando Challenger Columbus Challenger Chennai Challenger Bangkok Challenger Bangkok Challenger Yokohama Challenger Shenzhen Challenger Spain F17 (Bakio) Zhangjiagang Challenger Alicante Challenger Barletta Challenger Murcia Challenger Sarasota Challenger Francavilla Challenger Ostrava Challenger Braga Challenger Shymkent Challenger Lisbon Challenger Samarkand Challenger Almaty Challenger Fergana Challenger Nur-Sultan Challenger Amersfoort Challenger Tampere Challenger Sopot Challenger Manerbio Challenger Meerbusch Challenger Szczecin Challenger Buenos Aires Challenger Nur-Sultan Challenger Campinas Challenger Santo Domingo Challenger Ann Arbor Challenger Bergamo Challenger Lisbon Challenger Sao Paulo Challenger Maia Challenger St. Petersburg 1 Challenger Oeiras 1 Challenger Oeiras 2 Challenger Oeiras 3 Challenger Oeiras 4 Challenger Biella 7 Challenger Almaty 1 Challenger Almaty 2 Challenger Forli Challenger Milan Challenger Porto Challenger Amersfoort Challenger Tampere Challenger Poznan Challenger San Marino Challenger Verona Challenger Kyiv Challenger Bucharest Challenger Manama Challenger Antalya 3 Challenger Maia 1 Challenger Maia 2 Challenger Bendigo Challenger Cherbourg Challenger Forli 4 Challenger Zadar Challenger Oeiras 1 Challenger Murcia Challenger Oeiras 2 Challenger Bordeaux Challenger Shymkent 1 Challenger Shymkent 2 Challenger Forli 6 Challenger Perugia Challenger Lyon Challenger Oeiras 3 Challenger Malaga Challenger Salzburg Challenger Amersfoort Challenger San Marino Challenger Lima Challenger Banja Luka Challenger Toulouse Challenger Tulln Challenger Szczecin Challenger Sibiu Challenger Rio De Janeiro Challenger Las Vegas Challenger Montevideo Challenger Sao Leopoldo Challenger Valencia Challenger Maia Challenger Canberra Challenger Tenerife 2 Challenger Cherbourg Challenger Monterrey Challenger Rovereto Challenger Waco Challenger Puerto Vallarta Challenger Antalya Challenger Szekesfehervar Challenger Las Franquesas del Valles Challenger Girona Challenger Murcia Challenger Ostrava Challenger Aix En Provence Challenger Prague 2 Challenger Oeiras 4 Challenger Troisdorf Challenger Lyon Challenger Braunschweig Challenger Aix En Provence Challenger Lisbon Challenger Santa Fe 2 Challenger Tenerife 3 Challenger Barcelona Challenger Liberec Challenger Lisbon Challenger Lima 2 Challenger Sibiu Challenger Como Challenger Valencia Challenger M25 Santa margherita di Pula M25 Maribor Estoril Open - Estoril Estoril Open - Estoril Gerry Weber Open - Halle Delray Beach International Tennis Championships - Delray Beach Estoril Open - Estoril Pilot Pen Tennis - New Haven M25 Vila Real de Santo Antonio Estoril Open - Estoril M25 Vila Real de Santo Antonio M25 Quinta do Lago Estoril Open - Estoril Campbells Hall of Fame Tennis Championships - Newport Estoril Open - Estoril Open de Nice Cote d'Azur - Nice VTR Open - Vina del Mar Brasil Open - Sao Paulo Copa Claro - Buenos Aires Estoril Open - Estoril M25 Vale do Lobo VTR Open - Vina del Mar Brasil Open - Sao Paulo Copa Claro - Buenos Aires Delray Beach International Tennis Championships - Delray Beach Portugal Open - Oeiras U.S. National Indoor Tennis Championships - Memphis Delray Beach Open - Delray Beach Brasil Open - Sao Paulo Portugal Open - Oeiras Mercedes Cup - Stuttgart M15 Melilla Bet-at-home Open - Hamburg M25 Sabadell Erste Bank Open - Vienna Swiss Indoors Basel - Basel Qatar ExxonMobil Open - Doha Abierto Mexicano Telcel - Acapulco US Men's Clay Court Championship - Houston BB&T Atlanta Open - Atlanta Valencia Open - Valencia Millennium Estoril Open - Estoril Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Millennium Estoril Open - Estoril SkiStar Swedish Open - Bastad Konzum Croatia Open - Umag Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Shenzhen Open - Shenzhen Rakuten Japan Open - Tokyo If Stockholm Open - Stockholm Aircel Chennai Open - Chennai Apia International - Sydney Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Millennium Estoril Open - Estoril Open Parc - Lyon Bet-at-home Open - Hamburg Generali Open - Kitzbuhel St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Millennium Estoril Open - Estoril Geneva Open - Geneva Abierto Mexicano - Los Cabos Kremlin Cup - Moscow Millennium Estoril Open - Estoril Open 13 Provence - Marseille Millennium Estoril Open - Estoril Generali Open - Kitzbuhel Open Sud de France - Montpellier M25 Antalya M25 Bolzano Prague Challenger Le Gosier Challenger III Challenger Isla de Gran Canaria Ciudad de Telde - Telde Nielsen USTA Pro Tennis Championship - Winnetka Oldum Brown Vancouver Open - Vancouver M25 Les Franqueses del Valles GHI Bronx Tennis Classic - Bronx Ford Tennis Championships - Louisville Salinas Challenger M25 Getxo Bogota Challenger Sony Ericsson Open - Miami Belem Challenger M25 Zaragoza Sony Ericsson Open - Miami Genova Challenger BNP Paribas Open - Indian Wells Aix En Provence Challenger Sony Ericsson Open - Miami BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Mutua Madrid Open - Madrid BNP Paribas Open - Indian Wells Western & Southern Open - Cincinnati BNP Paribas Open - Indian Wells Miami Open - Miami Rome Challenger Miami Open - Miami Bordeaux Challenger Milan Challenger Monte-Carlo Rolex Masters - Monte-Carlo Banja Luka Challenger Lima Challenger Newport Beach Challenger Buenos Aires Challenger U.S. Open - New York French Open - Paris Wimbledon - London French Open - Paris Szczecin Challenger Wimbledon - London French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Wimbledon - London Montechiarugolo - Parma Challenger Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne Wimbledon - London U.S. Open - New York U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Brasov Challenger Forli 5 Challenger Davis Cup, Group 1, 1R, GEO-POR 3-2 Davis Cup, Group 2, 2R, POR-TUN 4-1 Davis Cup, Group I, PO, SVK-POR 3-1 Davis Cup, Group II, 2R, POR-LTU 5-0 Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group I, 1R, SLO-POR 3-2 Davis Cup, Group I, PO, RUS-POR 4-1 Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group I, 1R, POR-AUT 1-4 Davis Cup, Group I, PO, POR-SLO 5-0 Davis Cup, Group I, 1R, POR-ISR 5-0 Davis Cup, Group I, 2R, POR-UKR 4-1 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, Group I, 1R, ROU-POR 3-1 Davis Cup, Group I, PO, POR-POL 4-0 Lisbon Challenger Wimbledon (juniors) U.S. Open (juniors) U.S. Open (juniors) French Open (juniors) Wimbledon (juniors) All Lower level tournaments Roseto Degli Abruzzi 2 Challenger Olympics - Rio de Janeiro Campinas Challenger Malaga Challenger Madrid Challenger Dobrich Challenger Maspalomas Challenger Lima 2 Challenger Royan Challenger Porto Challenger Braunschweig Challenger Sofia 2 Challenger Todi Challenger Lille Challenger Oeiras 4 Challenger Tulln Challenger Seville Challenger Lyon Challenger Bunschoten Challenger Tulln Challenger Braga Challenger Quimper Challenger Valencia Challenger Nonthaburi 1 Challenger Oeiras 2 Challenger Punta Del Este Challenger Pau Challenger Braga Challenger Tampere Challenger Lyon Challenger EFG Swiss Open - Gstaad Gonet Geneva Open - Geneva Generali Open - Kitzbuhel Hamburg European Open - Hamburg U.S. Open - New York Australian Open - Melbourne U.S. Open - New York Australian Open (juniors)